package com.xing.service;

import com.xing.common.dto.BrowseDto;
import com.xing.common.lang.Result;
import com.xing.model.Blog;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 柠檬有点甜
 * @since 2021-08-17
 */
public interface BlogService extends IService<Blog> {

   /*主页面查询十条最火数据*/
   Result ShowBrowseCount();

   /**
    * 定时更新点赞量最热文章排行榜
    */
   void saveHotTop();

   /**********************浏览记录与浏览量********************************/
   /**
    * @Description: 存入浏览记录 key= ip::aid  value=date
    * @Param ip IP地址
    * @Param aid 文章id
    */
   void saveBrowseRedis(String ip, String aid);

   /**
    * @Description: 文章浏览数+1
    * @Param aid 文章id
    */
   void incrementCount( String aid);

   /**
    * 获取Redis中存储的所有浏览数量
    * @return
    */
   List<BrowseDto> getBrowseCountFromRedis();

   /**
    * 批量添加浏览量
    * @return
    */
   int addBrowseCount(List<BrowseDto> browseDto);

   /**
    * 批量添加收藏数量
    * @param browseDto
    * @return
    */
   int addCollectCount(List<BrowseDto> browseDto);

   /**
    *
    * 批量添加点赞数量
    * @param browseDto
    * @return
    */
   int addLikeCount(List<BrowseDto> browseDto);


}
